A social-networking system, which may include a social-networking website, may enable its users (such as persons or organizations) to interact with it and with each other through it. The social-networking system may, with input from a user, create and store in the social-networking system a user profile associated with the user. The user profile may include demographic information, communication-channel information, and information on personal interests of the user. The social-networking system may also, with input from a user, create and store a record of relationships of the user with other users of the social-networking system, as well as provide services (e.g. wall posts, photo-sharing, event organization, messaging, games, or advertisements) to facilitate social interaction between or among users.
The social-networking system may send over one or more networks content or messages related to its services to a mobile or other computing device of a user. A user may also install software applications on a mobile or other computing device of the user for accessing a user profile of the user and other data within the social-networking system. The social-networking system may generate a personalized set of content objects to display to a user, such as a newsfeed of aggregated stories of other users connected to the user.
Social-graph analysis views social relationships in terms of network theory consisting of nodes and edges. Nodes represent the individual actors within the networks, and edges represent the relationships between the actors. The resulting graph-based structures are often very complex. There can be many types of nodes and many types of edges for connecting nodes. In its simplest form, a social graph is a map of all of the relevant edges between all the nodes being studied.
Speech-recognition systems may allow a user to dictate and have speech transcribed as written text, have a document synthesized as an audio stream, or issue commands that are recognized as such by the system. Speech-recognition systems typically use statistical models to determine the most likely sequences of words that correspond to a given portion of speech received by a computer system as audio input. The models may include one or more of hidden Markov models, neural networks, deep learning models, and the like. The received audio input may be encoded into digital data at a particular sampling rate, e.g., 16, 44.1, or 96 kHz, and with a particular number of bits representing each sample, e.g., 8, 16, of 24 bits. The audio input is processed by an acoustical model, which is a model of the relationship between audio signals and the sounds of phonetic units in the language. A language model then determines the most likely phrase that corresponds to the identified phonetic units for a particular audio input. The language model may be a model of the probabilities that various word sequences may occur in the language. The sounds of the phonetic units in the audio input are matched with word sequences using the language model, and greater weights are assigned to the words sequences that are more likely to be phrases in the language. The word sequence having the highest weight is then selected as the text that corresponds to the audio input.
The acoustical model may be generated using training input data such as training speech received as audio input and the corresponding phonetic units that correspond to the speech. The acoustical model may be trained or refined using the voice of a particular user, in which case the model may be used to recognize that user's speech. The acoustical model may be trained using a larger sample that includes the voices of many users to produce a speaker-independent model that capable of recognizing the voices of users for whom it has not been trained. The language model may be generated based on phrases in the language to be recognized by the language model.
In addition, voice profiles can be generated for individual users to store data specific to each individual user for use in recognizing each individual user's speech. The voice profile information may include parameters such as the user's default language or a speaker-dependent model generated based on that user's voice. The voice profiles can be accessed through different computers in a networked environment, although the audio hardware and configuration may need to be similar or identical on both machines.